import axios from 'axios'
import BaseApi from '@/api/BaseApi'
import config from '@/config'

/**
 * 逻辑网段
 */
export default class extends BaseApi {
  /**
   * 获取基础路径
   *
   * @return 基础路径
   */
  static basePath() {
    return (config.services.oen || '') + '/logicSegment'
  }

  //   列表
  static queryPage(params, pageData) {
    return axios.post(`${this.basePath()}/queryPage`, params, { params: pageData })
  }

  //   刷新链路段（全量）
  static refreshLogicSegment(params) {
    return axios.get(`${this.basePath()}/refreshLogicSegment`, params)
  }

  //   刷新链路段（差量）
  static incrementalRefresh(params) {
    return axios.get(`${this.basePath()}/incrementalRefresh`, params)
  }

  //   修改名称
  static updateName(params) {
    return axios.put(`${this.basePath()}/updateName`, params)
  }

  // 获取全部列表
  static queryList(params) {
    return axios.post(`${this.basePath()}/queryList`, params)
  }

  // 保存链损
  static saveLogicSegment(params) {
    return axios.post(`${this.basePath()}/saveLogicSegment`, params)
  }

  // 获通道列表
  static detail(params) {
    return axios.get(`${this.basePath()}/detail`, { params })
  }

  // 获取端口关联链路信息
  static getListByPortId(params) {
    return axios.get(`${this.basePath()}/getListByPortId`, { params })
  }

  // 获取链路信息
  static getByStructMap(params) {
    return axios.post(`${this.basePath()}/getByStructMap`, params)
  }

  // 根据光缆id或端口id查询关联链路
  static getListByParam(params) {
    return axios.get(`${this.basePath()}/getListByParam`, { params })
  }

  // 根据链路段id查询对应链路的告警信息
  static getAlarmBySegmentId(params) {
    return axios.get(`${this.basePath()}/getAlarmBySegmentId`, { params })
  }

  // 根据链路段id查询对应链路的信息
  static getListBySegmentIds(params) {
    return axios.get(`${this.basePath()}/getListBySegmentIds`, { params })
  }
}
